package com.lekang.le.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.lekang.common.annotation.Excel;
import com.lekang.common.core.domain.BaseEntity;

/**
 * 护理项目与护理计划中间对象 nursing_item_plan_binding
 * 
 * @author yyh
 * @date 2025-10-16
 */
public class NursingItemPlanBinding extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 护理项目外键编号 */
    @Excel(name = "护理项目外键编号")
    private Long nursingItemId;

    /** 护理计划外键编号 */
    @Excel(name = "护理计划外键编号")
    private Long nursingPlanId;

    private String planName;

    /** 服务时间 */
    @JsonFormat(pattern = "HH:mm")
    @Excel(name = "服务时间", width = 30, dateFormat = "HH:mm")
    private Date serviceTime;

    /** 执行周期(1:每日 2:每周 3:每月) */
    @Excel(name = "执行周期(1:每日 2:每周 3:每月)")
    private Long executionCycle;

    /** 执行频次(次数) */
    @Excel(name = "执行频次(次数)")
    private Long executionFrequency;

    /** 额外字段1 */
    @Excel(name = "额外字段1")
    private String extraField1;

    /** 额外字段2 */
    @Excel(name = "额外字段2")
    private String extraField2;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setNursingItemId(Long nursingItemId) 
    {
        this.nursingItemId = nursingItemId;
    }

    public Long getNursingItemId() 
    {
        return nursingItemId;
    }

    public void setNursingPlanId(Long nursingPlanId) 
    {
        this.nursingPlanId = nursingPlanId;
    }

    public Long getNursingPlanId() 
    {
        return nursingPlanId;
    }

    public void setServiceTime(Date serviceTime) 
    {
        this.serviceTime = serviceTime;
    }

    public Date getServiceTime() 
    {
        return serviceTime;
    }

    public void setExecutionCycle(Long executionCycle) 
    {
        this.executionCycle = executionCycle;
    }

    public Long getExecutionCycle() 
    {
        return executionCycle;
    }

    public void setExecutionFrequency(Long executionFrequency) 
    {
        this.executionFrequency = executionFrequency;
    }

    public Long getExecutionFrequency() 
    {
        return executionFrequency;
    }

    public void setExtraField1(String extraField1) 
    {
        this.extraField1 = extraField1;
    }

    public String getExtraField1() 
    {
        return extraField1;
    }

    public void setExtraField2(String extraField2) 
    {
        this.extraField2 = extraField2;
    }

    public String getExtraField2() 
    {
        return extraField2;
    }

    public String getPlanName() {
        return planName;
    }

    public void setPlanName(String planName) {
        this.planName = planName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("nursingItemId", getNursingItemId())
            .append("nursingPlanId", getNursingPlanId())
            .append("serviceTime", getServiceTime())
            .append("executionCycle", getExecutionCycle())
            .append("executionFrequency", getExecutionFrequency())
            .append("extraField1", getExtraField1())
            .append("extraField2", getExtraField2())
            .toString();
    }
}
